package com.bienvenue.main.ui.activity.personal;

import android.os.Handler;
import android.support.v4.widget.SwipeRefreshLayout;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;

import com.bienvenue.main.R;
import com.bienvenue.main.adapter.HotJobPositionAdapter;
import com.bienvenue.main.base.BaseActivity;
import com.bienvenue.main.httpService.ResponseObserver;
import com.bienvenue.main.model.HotJobPositionModel;
import com.bienvenue.main.model.HttpBean;
import com.bienvenue.main.serviceApi.ServiceModel;

import java.util.ArrayList;
import java.util.List;

import butterknife.BindView;
import butterknife.OnClick;

/**
 * 　　　　　　　 ┏┓       ┏┓+ +
 * 　　　　　　　┏┛┻━━━━━━━┛┻┓ + +
 * 　　　　　　　┃　　　　　　 ┃
 * 　　　　　　　┃　　　━　　　┃ ++ + + +
 * 　　　　　　 █████━█████  ┃+
 * 　　　　　　　┃　　　　　　 ┃ +
 * 　　　　　　　┃　　　┻　　　┃
 * 　　　　　　　┃　　　　　　 ┃ + +
 * 　　　　　　　┗━━┓　　　 ┏━┛
 * ┃　　  ┃
 * 　　　　　　　　　┃　　  ┃ + + + +
 * 　　　　　　　　　┃　　　┃　Code is far away from     bug with the animal protecting
 * 　　　　　　　　　┃　　　┃ + 　　　　         神兽保佑,代码无bug
 * 　　　　　　　　　┃　　　┃
 * 　　　　　　　　　┃　　　┃　　+
 * 　　　　　　　　　┃　 　 ┗━━━┓ + +
 * 　　　　　　　　　┃ 　　　　　┣┓
 * 　　　　　　　　　┃ 　　　　　┏┛
 * 　　　　　　　　　┗┓┓┏━━━┳┓┏┛ + + + +
 * 　　　　　　　　　 ┃┫┫　 ┃┫┫
 * 　　　　　　　　　 ┗┻┛　 ┗┻┛+ + + +
 * 版权：陇朝赢科技有限公司 版权所有
 *
 * @author 18592
 * 版本：
 * 创建日期：2020/10/10
 * 描述：热门职位
 * ClassName：HotJobActivity
 * PackageName:com.bienvenue.main.ui.activity.personal
 */
public class HotJobActivity extends BaseActivity implements SwipeRefreshLayout.OnRefreshListener {
    @BindView(R.id.rv_hot_job_position)
    RecyclerView rvHotJobPosition;
    @BindView(R.id.srl_refresh)
    SwipeRefreshLayout srlRefresh;

    HotJobPositionAdapter mAdapter;
    int page = 1;

    @Override
    protected void initData() {
        onRefreshs(page);

    }

    public List<HotJobPositionModel.DataBean> onRefreshs(int page) {
        List<HotJobPositionModel.DataBean> data = new ArrayList<>();
        ServiceModel.getServiceModel().getPopularPositions(page, 20, new ResponseObserver<HotJobPositionModel>() {
            @Override
            public void onSuccess(HotJobPositionModel response) {
                if (response.getCode() == 0 || response.getCode() == 200) {
                    showToast("查询成功");
                    if (response.getData().size() > 0) {
                        data.clear();
                    }
                    data.addAll(response.getData());
                    mAdapter.setNewData(response.getData());
                } else {
                    showToast(response.getMsg());
                    srlRefresh.setRefreshing(false);
                }
            }

            @Override
            public void onFail(String message) {
                showLog(message);
                srlRefresh.setRefreshing(false);
            }
        });
        srlRefresh.setRefreshing(false);
        return data;
    }

    @Override
    protected void initView() {
        rvHotJobPosition.setLayoutManager(new LinearLayoutManager(this));
        mAdapter = new HotJobPositionAdapter();
        rvHotJobPosition.setAdapter(mAdapter);
        srlRefresh.setOnRefreshListener(this);
    }

    @Override
    protected int getLayoutId() {
        return R.layout.activity_hot_job;
    }

    @OnClick(R.id.tv_return_btn)
    void onFinish() {
        this.finish();
    }


    @Override
    public void onRefresh() {
        //模拟网络请求需要3000毫秒，请求完成，设置setRefreshing 为false
        new Handler().postDelayed(new Runnable() {
            @Override
            public void run() {
                page = page + 1;
                List<HotJobPositionModel.DataBean> list = onRefreshs(page);
                if (list.size() == 0) {
                    page=1;
                    onRefreshs(page);
                }
            }
        }, 3000);

    }
}
